/**
 * @Author: luoc
 * @Date: 2019/10/21 12:53
 */
public class Solution {
    /**
     *  获取最大利润
     * @param prices
     * @return
     */
    public static int maxProfit(int[] prices) {
        int count =0;
        for(int i=0;i<prices.length - 1;i++){
            if(prices[i] < prices[i+1]){
                count += (prices[i+1] - prices[i]);
            }
        }
        return count;
    }

    /**
     *  移除有序重复的数据
     * @param nums
     * @return
     */
    public static int removeDuplicates(int[] nums) {
        int num = 0;
        for(int i=0;i<nums.length -1 ;i++){
            // 0 0 1 1 2 2 3 3 4 4
            // 0 0 1 1
            if (nums[i] != nums[i+1]){
                num++;
                nums[num] = nums[i+1];
            }
        }
        return  num +1;
    }

    /**
     * 旋转数组
     * @param nums
     * @param k
     */
    public static int rotate(int[] nums, int k) {
        int origin = 0;
        int b = 0;
        for (int i = 0; i < nums.length -1; i++) {
            k = (k+i)%(nums.length-1);
            origin = nums[k];
            nums[k] = nums[i];
        }
        return b;
    }


    /**
     *  快速排序
     * 最后一个元素是否会被比较？
     * 越界问题？
     * @param a
     */
    public static void quick(int[] a) {
        int temp =0;
        for (int i = 0; i < a.length; i++) {
            int min = i;
            for (int j = i+1; j < a.length ; j++) {
                 if (a[min] > a[j]){
                      min = j;
                 }
            }
            temp = a[i];
            a[i]  = a[min];
            a[min] = temp;
        }
    }

    /**
     *  插入排序
     * @param a
     */
    public static void insert(int[] a){
        for (int i = 1; i < a.length; i++) {
             for (int j =i; j >= 0 ;j--) {

             }
        }
    }

    /**
     *  冒泡排序
     * @param a
     */
    public static void bubble(int[] a){

    }



    private static void rec(int[] nums,int origin,int k){
        int temp = 0;
        temp = nums[origin];

    }

    public static void main(String[] args) {
        // [3,2,6,5,0,3]
        // 2,1,2,0,1
        int[] a = new int[]{0,0,1,1,1,2,2,2,3,3,4,4};
        rotate(a,1);
        //System.out.println(5/2);
        //System.out.println(5%2);
       // System.out.println(removeDuplicates(a));
    }
}
